package com.ruanruan.structure.array;

/**
 * 列表基本操作接口
 * @param <E> 列表值的类型
 */
public interface List<E> {

    /**
     * 列表链式添加操作
     * @param e 添加的值
     * @return 链式节点
     */
    List<E> add(E e);

    /**
     * 移除下标为i的节点
     * @param i 下标
     */
    void remove(int i);

    /**
     * 判断列表是否为空
     * @return 是否为空
     */
    int size();

    /**
     * 判断列表是否为空
     * @return 是否为空
     */
    boolean isEmpty();
}
